<http://apollo.ahabs.wisc.edu/Individuals/Students/Hahn/MarathonStuff.html> (where latest versions are kept).
About MaraOS
MaraOS, formerly called Marathon Runner, is an application that makes it easier to manage all the different Marathon modules (accessory files) you might have accumulated. The usual way to do this involves a lot of copying, moving, renaming, and forgetting. I wrote MaraOS to make this process somewhat simpler- it moves files to their proper place and keeps track of their names so you don't have to.
It does this by searching for modules within a certain folder and presenting a dialog with popup menus that allow you to more easily select the different modules you want to use. It tracks the following modules: Marathon Preferences, Map, Music, Physics Model, Shapes, Sounds, and different Marathon applications. It then moves modules to their appropriate locations, renames them, and launches the selected Marathon application.
Basically, it's a Startup/Extension Manager kind of program, but for Marathon.
Using MaraOS
To use MaraOS, place it in the same folder as the Marathon application. Place all modules within this folder. MaraOS will then search this folder and all folders within for modules. You can organize your modules any way you please, but before running MaraOS for the first time, heed the following caveats:
- give all your modules names other than the standard Bungie names (no files named "Map").
- make sure all modules have unique names (ie 2 files named "Cool Map" = bad).
- make sure you don't have folders with the standard Bungie names
- Don't forget to rename and move the Marathon Preferences file from the Preferences Folder to within Marathon's folder!!!
If you've used Marathon Runner in the past, you can probably just simply replace MR (after resetting your modules by running MR one last time) with MaraOS. There is no need to reorganize your modules, except in the case of "<use current>" modules which have to be renamed.
Now run MaraOS. After MaraOS searches for modules, you'll be presented with a dialog window with popups from which to choose them. Make your selections and launch Marathon by either clicking on the "Launch Marathon" button or selecting "Launch Marathon" from the File menu (command-L).
The selected Marathon will then launch using the selected modules. When Marathon quits, MaraOS will move the module files back to their original locations and you may either quit by selecting "Quit" from the File menu (command-Q) or repeat the selection/launch process.
Using Sets
You can link modules by creating sets. MaraOS tracks at least one set, called "Standard". You can create new sets and delete existing ones by selecting "Edit Sets…" from the File menu (command-E). You will then be presented with a dialog window listing all current sets.
Clicking on the "New…" button will bring up yet another dialog window asking you to name your new set. Keep set names to 63 characters or less. The new set will configure itself with the current module selections.
Selecting a set within the set editing dialog and clicking on the "Delete" button will delete that set. You cannot delete the "Standard" set.
Click on the "OK" button or double-click on a set name to exit the set editing dialog.
To link modules to a set, select the set in the "Sets" popup menu and then select the modules you wish to link to that set.
Preferences
In addition to moving files and launching Marathon, MaraOS can quit Finder for a small speed gain. To do this, open the preferences dialog by selecting "Preferences" from the File menu and click the "Quit Finder" checkbox so that it is on. Please see the technical note below for more information on this feature.
You can also have MaraOS move the currently selected set into position when you quit rather than leaving them in their original locations. This can be useful if others play Marathon on your computer and do not use MaraOS. To select this preference, click the "Move on quit" checkbox within the Preferences dialog so that it is on.
Technical Notes
MaraOS is a bit slower to start up than Marathon Runner was (making "Runner" something of a misnomer). This is a consequence of the new file searching algorithm- a trade off of speed for flexibility in organization. However, MaraOS makes up for this lost time by not quitting after launch, so you have the endure the initialization only once. I mostly play NetMarathon and I'm usually the Gathering Dude- I end up switching maps quite frequently. The way I wrote MaraOS reflects this usage, minimizing the downtime between games as I switch modules.
If the lag really bothers you, remove extraneous files from the Marathon folder (ReadMes, infrequently used modules, etc.).
The Finder quitting function, though tested, should be used with caution. I only include it because it was rather easy to code and circumvents the need to use another utility (such as an AppleScript) to accomplish this for those who desire the additional speed gain. There may arise situations where the Finder is expected and crashes may result. To decrease the likelihood of such a crash, make sure all other applications are quit before running MaraOS.
None of the items in the Edit menu do anything.
While other similar applications (Marathon Mystifier and Marathon Master for example) accomplish the same goal as MaraOS by modifiying Marathon to look for a particular module, I've opted to move files to accomodate Marathon. I do this out of my own reservations at modifying the Marathon application in any way. A downside to this is that file tracking is a bit more complicated and can sometimes get confused. If this happens, move and rename files manually as appropriate, and if that doesn't work, throw out the MaraOS Preferences file.
As the "b" in the version indicates, MaraOS is in beta release (the features list is locked). This means that there are probably bugs. If bugs make you mad and prone to writing authors nasty and unconstructive e-mail, please don't use MaraOS. If on the other hand you don't mind beta testing and encounter a bug, please don't hesitate to let me know. Being able to reproduce the bug is even better. Forgetting to move your Marathon Preferences file out of your Preferences folder and into Marathon's folder is not a bug.
Legal Stuff
MaraOS is freeware, my way of giving back to the Marathon community for all the cool things that have come out of it. All I ask is that you consider dropping me an e-mail to tell me what you think, even if it is only to tell me how utterly boring and dry the ReadMe is.
While MaraOS is freeware, it is not public domain and I retain all rights. It may be freely distributed but please do not distribute modified copies and include the ReadMe. Also, please do not include MaraOS in a software bundle without prior permission.
Thanks to
Scott Johnson - for the original idea and creative input
Michael Leetmaa - for technical assistance
Guillaume Fortin (author of Marathon Mystifier) - for technical discussion
Nathan Federici - for the Copland-style folder icon
Jim Luther of Apple Computer- for MoreFiles, saving me (and consequently the world) from writing my own copying routines
All the kind folks at c.s.m.programmer.help - for never letting my stupid questions go unanswered
All the kids in the AHABS and Chemistry zones here at the University of Wisconsin - for providing me with my daily Marathon fix (yes, addiction is an ugly thing)
Version History
1.0b
- Quits Finder on request
- "Move on quit" feature moved to preferences
- Fattening cosmetics added
1.0a3
- Released 26 June
- Fixed error whereby MaraOS failed to move modules when on non-startup volume (thanks to Robert Fleming for patiently working through this with me)
- Saves window position
- Implemented app quitting (barely)
1.0a2
- Released 20 June 1995
- Added Move & Quit item to File menu
- Tweaked error alerts so that they are slightly (just slightly) more informative
- Gives error if duplicate module names are found
- Gives error if files with Bungie standard names are found
- Made Launch button "default" (<return> or <enter>)
1.0a1
- Released 8 June 1995
- Just about re-wrote the whole damn thing
- Changed name of application from Marathon Runner to MaraOS
- Changed appearance of popups- they were proliferating like rabbits
- Re-wrote module searching and tracking routines
- Control of application to launch (ie different versions of Marathon)
- Made dialog modeless. It was very hard. It took a long time. It still doesn't work well.
- Implemented sets. It was very hard. It took a long time. I hope you like it.
- Splash screen eye candy as you wait for start up
- Fixed bug where Prefs file wouldn't transfer if Marathon wasn't on startup volume (what a pain!)
1.0d5
- Released 18 April 1995
- Fixed bug where if module of wrong file type was found, menu building stopped prematurely
- Fixed chaos that resulted when a module had Bungie's blessed name within the module folder
- Added some checks for file renaming and moving calls
1.0d4
- Released 13 April 1995 (wee! 3rd one in less than 24 hours! What a fucking fiasco.)
- Hopefully fixed character restriction for file names in a manner suitable for PowerMacs
1.0d3
- Released 13 April 1995
- Fixed problem causing failure on PowerMacs
- Re-introduced module name character restriction bug as a result
1.0d2
- Released 13 April 1995
- Fixed STR# for Physics Model to "Physics Model" (not "Physics". Duh.)
- Revamped ALRTs (they're a little less cryptic)
- Changed format of preferences file- this will probably change every revision :-(
- Now filters folders for correct file types
- Put in "<none>" selection for Physics and Music
- Popups display last used modules upon open (i.e. defaults)
- Fixed menu building so files that have a "/" in them don't screw up the popups
- Ignores control of module types when no folder is present